public class L206R {

    public static void main(String[] args) {
        ListNode listNode = new ListNode(0, null);
        ListNode listNode1 = new ListNode(1, listNode);
        ListNode listNode2 = new ListNode(2, listNode1);
        ListNode listNode3 = new ListNode(3, listNode2);

        ListNode listNode4 = new Solution().reverseList(listNode3);
        System.out.println(listNode4.toString());

    }

    static class Solution {
        public ListNode reverseList(ListNode head) {
            ListNode listNode = null;
            ListNode node = head;
            while (node != null) {
                ListNode next = node.next;
                node.next = listNode;
                listNode = node;
                node = next;
            }
            return listNode;
        }
    }

}
